package com.hystrix.command;

import com.netflix.hystrix.HystrixCommand;
import com.netflix.hystrix.HystrixCommandGroupKey;

/**
 * 后备回退命令，可在其他的回退方法返回此命令的执行
 * Created by earl on 2018/4/28.
 */
public class BackupCommand extends HystrixCommand<String> {


    public BackupCommand( ){
        //调用父类的构造器，设置命令组的key，默认用来作为线程池的key
        super(HystrixCommandGroupKey.Factory.asKey("ExampleGroup"));
    }

    @Override
    protected String run() throws Exception {
        return "backupCommand";
    }


    /**
     * 回退方法，断路器打开后会执行回退
     */
    @Override
    protected String getFallback() {
        System.out.println("-----后备回退命令 ------");
        return "backupCommand ------Fallback ";
    }

}
